package com.shinewind.info.service;

import com.shinewind.pojo.dto.AdminArticleDto;
import com.shinewind.pojo.dto.AdminModelDto;
import com.shinewind.pojo.entity.Article;
import com.shinewind.pojo.entity.Model;
import com.shinewind.pojo.entity.ModelInfo;
import com.shinewind.pojo.entity.UserInfo;
import com.shinewind.pojo.result.Result;
import com.shinewind.pojo.vo.*;

import java.util.List;
import java.util.Map;

public interface IInfoAdminService {
    public PageVo<AdminUserListVo> getUserList(Integer current,Integer pageSize,
                                               String userName,String nickName,
                                               String role,String telePhoneStatus);
    public Result addUser(Map<String, Object> user) throws Exception;
    public Result updateUser(String uId,Map<String, Object> user) throws Exception;
    public Result getAdminUserDetailByUid(String uId);
    public Result deleteUserByUid(String uId);
    public Result getModelTypeList();
    public Result addModelInfo(Model model, AdminModelDto adminModelDto);
    public ModelInfo getModelInfo(String mId);
    public Result updateModelInfo(String mId, AdminModelDto adminModelDto);
    public Result deleteModelInfo(String mId);
    public PageVo<UserDetailVo> getArticleAuthorList(Integer current, Integer pageSize);
    public PageVo<UserDetailVo> getArticleAuthorListByKeyWord(Integer current, Integer pageSize, String keyWord);
    public List<AdminArticleListVo> getArticleList(Integer current, Integer pageSize, String title,
                                                   String author, String publishTime);
    public AdminArticleDetailVo getArticleByAid(Integer aId);
    public Boolean addArticleInfo(AdminArticleDto adminArticleDto);
    public Article getArticleByaId(Integer aId);
    public Boolean updateArticleInfo(Integer aId,AdminArticleDto adminArticleDto);
    public Boolean DeleteArticleByAid(Integer aId);
    public List<UserDetailVo> getArticleAuthorUpdateList(Integer current, Integer pageSize);
    public UserInfo getUserInfo(String uId);
}
